home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 4 / Info_Mac IV CD-ROM (Pacific HiTech Inc.)(August 1994).iso / Development / Source / Library & Plugs / RossetMADF Library 68K & PPC / MAD.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-03-31  |  1.1 KB  |  41 lines  |  [TEXT/KAHL]

  1. struct PatHeader {
  2.     long    PatternSize;            // Length of pattern: standard = 64
  3.     long    CompressionMode;        // Compression mode, none = 'NONE'
  4.     char    PatternName[ 20];
  5.     long    unused1;
  6.     long    unused2;
  7. };
  8.  
  9. struct Command {
  10.     Byte    InstrumentNo;        // Instrument no
  11.     Byte     AmigaPeriod;        // Note, see table
  12.     Byte     EffectCmd;            // Effect cmd
  13.     Byte     EffectArg;            // Effect arg
  14. };
  15.  
  16. struct MusicPattern {                // Pattern = 64 notes to play
  17.     struct PatHeader    header;
  18.     struct Command    Commands[];
  19. };
  20.  
  21. struct FileInstrData {
  22.     char     Filename[ 32];        // Instrument's filename
  23.     long     insSize;            // Sample length
  24.     Byte     fineTune;
  25.     Byte     volume;            // Base volume
  26.     long    freq;                // Base frequence, simple, double, quadruple
  27.     Byte    amplitude;            // 8 or 16 bits
  28.     long    loopStart;            // LoopStart
  29.     long    loopLenght;            // LoopLength
  30. };
  31.  
  32. struct SoundTrackSpec {
  33.     long    MADIdentification;        // Mad Identification : 'MADF' 
  34.     char     NameSignature[ 32];    // Music's name
  35.     struct     FileInstrData fid[ 64];    // 64 instruments descriptor
  36.     Byte    PatMax;
  37.     Byte     numPointers;            // Patterns number
  38.     Byte    oPointers[ 128];        // Patterns list
  39.     Byte    Tracks;                    // Tracks number
  40. };
  41. typedef struct SoundTrackSpec SoundTrackSpec;